Skip to main content link. Accesskey S
  • Help
  • HCL Logo
  • HCL Notes and Domino Application Development wiki
  • THIS WIKI IS READ-ONLY. Individual names altered for privacy purposes.
  • HCL Forums and Blogs
  • Home
  • Product Documentation
  • Community Articles
  • Learning Center
  • API Documentation
Search
Community Articles > Developing Applications > Developing XPage Applications > Headless Designer Wiki
  • Share Show Menu▼
  • Subscribe Show Menu▼

Recent articles by this author

Community articleHeadless Designer Wiki
Added by ~Kim Lopfreesonikle | Edited by ~Mary Froweskiettu on March 26, 2014 | Version 13
expanded Abstract
collapsed Abstract
To facilitate the building of NSF/NTF files from source code repositories, Domino Designer has provided a command line build system. It is not a necessity to import source repositories into the Designer application to build NSF/NTF files. This is aimed at supporting team based development using the Domino Designer.
Tags: domino designer, xpages, headless build
ShowTable of Contents
HideTable of Contents
  • 1 Command Line Building of NSFs
  • 2 Setup
  • 3 Running
  • 4 Single Command
  • 5 Console
  • 6 Logging
  • 7 Command File
    • 7.1 Notes
  • 8 General features
  • 9 Update Manager Commands

Command Line Building of NSFs



To facilitate the building of NSF/NTF files from source code repositories, Domino Designer has provided a command line build system.
It is not a necessity to import source repositories into the Designer application to build NSF/NTF files.
This is aimed at supporting team based development using the Domino Designer.

Setup


To enable this functionality, one line needs to be added to the notes.ini file
DESIGNER_AUTO_ENABLED=true

Running


The command line build can be run in two different ways
  • Single Command
  • Command File

Single Command


The single command has the format:
designer -RPARAMS -vmargs -Dcom.ibm.designer.cmd= [single command]

The single command is made up of a number of comma separated components, and is contained within double quotes.

[clean],[exit],[file name],[job name],[file path],[file name]

The values for each of the components are:

  • clean: true/false
  • exit: true/false
  • file name: String value containing the name of the NSF/NTF to be created. If no file extension if included then a type of NSF will be created.
  • job name: the job to be run
  • file path: the path to the .project file of the repository to be built


 

The Headless Designer supports a number of jobs:


importandbuild [on disk project path] [nsf name]
imports the on-disk, creates the NSF, and begins the association. Processing of the next job does not wait for the sync or build to finish.
Note: this command will fail if the on-disk project already exists in the Designer workspace. Using clean will remove these when done processing. Specifying an already existing NSF file will not cause the build to fail.
wait [project name] [# of retries]
Waits for the given project to complete all build or sync operations. Since its not deterministic when (if) either event will start or finish, this loops a number of times looking before failing.
config [stop on error - true/false] [exit on error - true/false]
allows configuring some properties that control operation
clean
deletes all projects create so far in this execution. Does NOT delete the project contents.
exit [# milli delay] [restart-true/false] [resume - true/false]
Exits Designer. restart will restart the Designer, and resume will tell Designer to continuing processing the command file if there are commands after this exit command.
An example command would be as follows

Example:


designer.exe -RPARAMS -vmargs -Dcom.ibm.designer.cmd="true,true,Discussion.nsf,importandbuild,C:\XPageApps\Discussion\.project,Discussion.nsf"

Console


The output of the build can be viewed in a console by specifying the console as a program argument
designer -RPARAMS -console -vmargs -Dcom.ibm.designer.cmd=single command

Logging


The command line build also writes to its own log files
  • HEADLESS0.log
  • HEADLESSJOB0.log

These files are stored in the root Notes directory


Command File


For multiple commands, it is possible to pass a file path as a Java property to the command line build.


designer -RPARAMS -vmargs -Dcom.ibm.designer.cmd.file=path to command file

This file will contain one command per line, and a sample command file would be as follows:


config,true,true
importandbuild,C:\test\XPagesExt\.project,testXPages
wait,testXPages,20
importandbuild,C:\test\XPagesSBT\.project,testSBT
wait,testSBT,20
clean
exit

Notes



Although this is a command line build system, the Designer is launched and immediately minimised. However, no user interaction is needed with the GUI. However, due care needs to be taken as with the existance of the GUI, there is potential for issues where some unexpected state could display a dialog, etc.


General features

  • Import an on-disk-project and create an NSF
  • Remove any on-disk or NSF projects imported into the Designer since the beginning of a command-line session
  • Ability to restart Designer at any point during the command processing and resume where it left off.
  • [possible IBM internal feature] expose Eclipse Update Manager command line syntax for installing/updating update sites, etc.
  • [possible IBM internal feature?] extension points to allow adding commands


 

Update Manager Commands


These were added to allow some ability to update the Extension Library plugins using the command-line syntax.
com.ibm.designer.domino.tools.userlessbuild.jobs.UpdateManagerJob command

where "command" is a standard Eclipse Update Manager command.
See: http://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Freference%2Fmisc%2Fupdate_standalone.html


Also, if the [internal] Update Manager command interfaces are being used, it will probably be necessary to disable the Notes provisioning security, in order to allow "dropping" plugins into Designer.

  • command install -from jar:file:file_url -to file:/workspace_applications -featureId featureId -version version
  • command enable -to file:/workspace_applications -featureId featureId -version version
  • command disable -to file:/workspace_applications -featureId featureId -version version
  • command uninstall -to file:/workspace_applications -featureId featureId -version version


An example command file, using a few Update Manager commands:


config,true,true
com.ibm.designer.domino.tools.userlessbuild.jobs.UpdateManagerJob,-command install -from jar:file:C:/UDS/com.ibm.sbt.domino.updatesite.zip!/ -to file:/C:/Notes90/Data/workspace/applications -featureId com.ibm.sbt.domino.feature -version 1.0.0.20131121-0623
exit,18000,true,true
com.ibm.designer.domino.tools.userlessbuild.jobs.UpdateManagerJob,-command enable -to file:/C:/Notes90/Data/workspace/applications -featureId com.ibm.sbt.domino.feature -version 1.0.0.20131121-0623
exit,18000,true,true
importandbuild,C:\test\XPagesExt\.project,UMtest
wait,UMtest,20
com.ibm.designer.domino.tools.userlessbuild.jobs.UpdateManagerJob,-command enable -to file:/C:/Notes90/Data/workspace/applications -featureId com.ibm.sbt.domino.feature -version 1.0.0.20131121-0623
exit,18000,true,true
com.ibm.designer.domino.tools.userlessbuild.jobs.UpdateManagerJob,-command enable -to file:/C:/Notes90/Data/workspace/applications -featureId com.ibm.sbt.domino.feature -version 1.0.0.20131121-0623
clean
exit,12000
expanded Attachments (1)
collapsed Attachments (1)
File TypeSizeFile NameCreated OnDelete file
application/octet-stream 6 KB Command Line Doc.odt 10/21/13, 9:05 AM
expanded Versions (28)
collapsed Versions (28)
Version Comparison     
VersionDateChanged by              Summary of changes
28Apr 1, 2014, 3:03:41 PM~Lorraine Eknibergings  
27Apr 1, 2014, 3:03:06 PM~Mary Froweskiettu  
26Mar 26, 2014, 3:31:36 PM~Mary Froweskiettu  
25Mar 26, 2014, 3:30:37 PM~Mary Froweskiettu  
24Mar 26, 2014, 3:28:47 PM~Mary Froweskiettu  
23Mar 26, 2014, 3:25:23 PM~Mary Froweskiettu  
22Mar 26, 2014, 3:18:16 PM~Mary Froweskiettu  
21Mar 26, 2014, 3:14:04 PM~Mary Froweskiettu  
20Mar 26, 2014, 3:12:02 PM~Mary Froweskiettu  
19Mar 26, 2014, 3:08:09 PM~Mary Froweskiettu  
18Mar 26, 2014, 3:04:05 PM~Mary Froweskiettu  
17Mar 26, 2014, 2:58:35 PM~Mary Froweskiettu  
16Mar 26, 2014, 2:41:09 PM~Mary Froweskiettu  
15Mar 26, 2014, 2:37:46 PM~Mary Froweskiettu  
14Mar 26, 2014, 2:34:20 PM~Mary Froweskiettu  
This version (13)Mar 26, 2014, 2:10:01 PM~Mary Froweskiettu  
12Feb 25, 2014, 9:26:16 AM~Kim Lopfreesonikle  
10Feb 19, 2014, 10:06:13 AM~Kim Lopfreesonikle  
9Feb 19, 2014, 9:50:55 AM~Kim Lopfreesonikle  
8Feb 18, 2014, 9:26:29 AM~Kim Lopfreesonikle  
7Feb 17, 2014, 5:05:14 PM~Kim Lopfreesonikle  
6Feb 17, 2014, 4:50:22 PM~Kim Lopfreesonikle  
5Feb 17, 2014, 4:33:16 PM~Kim Lopfreesonikle  
4Feb 17, 2014, 4:18:25 PM~Kim Lopfreesonikle  
3Feb 17, 2014, 10:26:59 AM~Kim Lopfreesonikle  
2Feb 17, 2014, 10:23:03 AM~Kim Lopfreesonikle  
1Feb 17, 2014, 10:04:28 AM~Kim Lopfreesonikle  
1Feb 17, 2014, 10:11:16 AM~Kim Lopfreesonikle  
Copy and paste this wiki markup to link to this article from another article in this wiki.
Go ElsewhereStay ConnectedAbout
  • HCL Software
  • HCL Digital Solutions community
  • HCL Software support
  • BlogsDigital Solutions blog
  • Community LinkHCL Software forums and blogs
  • About HCL
  • Privacy
  • Accessibility